import tkinter as tk
from tkinter import messagebox
import random

def sort_random():
    try:
        arr = list(map(int, entry.get().split()))
    except ValueError:
        messagebox.showerror("错误", "请输入有效的数字列表")
        return

    iterations = 0
    while not is_sort(arr):
        iterations += 1
        random.shuffle(arr)

    result_label.config(text=f"排序后的数组: {arr}\n算法复杂度: {iterations}")

def is_sort(arr):
    for i in range(1, len(arr)):
        if arr[i] < arr[i - 1]:
            return False
    return True

# 创建主窗口
root = tk.Tk()
root.title("随机排序")

# 创建输入框

entry = tk.Entry(root)
entry.insert(0,'1 3 2 5 61 17 9')
entry.pack()

# 创建排序按钮
sort_button = tk.Button(root, text="随机排序", command=sort_random)
sort_button.pack()

# 创建结果标签
result_label = tk.Label(root, text="")
result_label.pack()

# 运行主循环
root.mainloop()